import { PasswordFieldProps, Flex, TextField, SelectField, SwitchField, } from '@aws-amplify/ui-react'; export interface PasswordFieldControlsProps extends PasswordFieldProps { setDefaultValue: ( value: React.SetStateAction ) => void; setAutoComplete: ( value: React.SetStateAction ) => void; setDescriptiveText: ( value: React.SetStateAction ) => void; setErrorMessage: ( value: React.SetStateAction ) => void; setHasError: ( value: React.SetStateAction ) => void; setIsDisabled: ( value: React.SetStateAction ) => void; setIsReadOnly: ( value: React.SetStateAction ) => void; setIsRequired: ( value: React.SetStateAction ) => void; setLabelHidden: ( value: React.SetStateAction ) => void; setName: (value: React.SetStateAction) => void; setPlaceholder: ( value: React.SetStateAction ) => void; setLabel: (value: React.SetStateAction) => void; setSize: (value: React.SetStateAction) => void; setValue: (value: React.SetStateAction) => void; setVariation: ( value: React.SetStateAction ) => void; setHideShowPassword: ( value: React.SetStateAction ) => void; } interface PasswordFieldPropControlsInterface { (props: PasswordFieldControlsProps): JSX.Element; } export const PasswordFieldPropControls: PasswordFieldPropControlsInterface = ({ autoComplete, setAutoComplete, defaultValue, setDefaultValue, errorMessage, setErrorMessage, hasError, setHasError, isDisabled, setIsDisabled, isReadOnly, setIsReadOnly, isRequired, setIsRequired, label, setLabel, labelHidden, setLabelHidden, name, setName, placeholder, setPlaceholder, size, setSize, value, setValue, variation, setVariation, hideShowPassword, setHideShowPassword, descriptiveText, setDescriptiveText, }) => { return ( setAutoComplete(event.target.value)} > { setDefaultValue( event.target.value as PasswordFieldProps['defaultValue'] ); }} /> { setDescriptiveText( event.target.value as PasswordFieldProps['descriptiveText'] ); }} /> { setErrorMessage( event.target.value as PasswordFieldProps['errorMessage'] ); }} /> { setHasError(event.target.checked as PasswordFieldProps['hasError']); }} /> { setIsDisabled( event.target.checked as PasswordFieldProps['isDisabled'] ); }} /> { setIsReadOnly( event.target.checked as PasswordFieldProps['isReadOnly'] ); }} /> { setIsRequired( event.target.checked as PasswordFieldProps['isRequired'] ); }} /> { setLabel(event.target.value as PasswordFieldProps['label']); }} /> { setLabelHidden( event.target.checked as PasswordFieldProps['labelHidden'] ); }} /> { setName(event.target.value as PasswordFieldProps['name']); }} /> { setPlaceholder( event.target.value as PasswordFieldProps['placeholder'] ); }} /> setSize(event.target.value as PasswordFieldProps['size']) } > { setValue(event.target.value as PasswordFieldProps['value']); }} /> setVariation(event.target.value as PasswordFieldProps['variation']) } > { setHideShowPassword( event.target.checked as PasswordFieldProps['hideShowPassword'] ); }} /> ); };